//package com.client.view;
//
//import com.client.model.FirstConnector;
//import com.client.controller.ClientSocketThreadManager;
//import com.client.controller.FriendListFrameManager;
//import com.common.Message;
//import com.common.MessageType;
//import com.common.User;
//import com.server.view.RegisterFrame;
//import org.jb2011.lnf.beautyeye.BeautyEyeLNFHelper;
//import org.jb2011.lnf.beautyeye.ch3_button.BEButtonUI;
//
//import javax.swing.*;
//import java.awt.*;
//import java.awt.event.ActionEvent;
//import java.awt.event.ActionListener;
//import java.awt.event.KeyEvent;
//import java.awt.event.KeyListener;
//import java.io.ObjectOutputStream;
//
///**登录界面：
// * @author: lxl
// * @updater: lyh 2021/9/22
// *
// */
///*
//QQ客户端登录界面
// */
//public class LoginFrame extends JFrame implements ActionListener, KeyListener {
//    //北部需要的组件
//    JLabel jl;
//    //中部需要的组件
//    JPanel jp2;
//    JPanel jp3;
//    JPanel jp4;
//    JLabel jl1;
//    JLabel jl2;
//    JTextField id;
//    JPasswordField pwd;
//    //南部需要的组件
//    JPanel jp1;
//    JButton jb;
//    JButton jb2;
//    public static void main(String[] args) {
//        new LoginFrame();
//        try
//        {
//            BeautyEyeLNFHelper.frameBorderStyle = BeautyEyeLNFHelper.FrameBorderStyle.osLookAndFeelDecorated;
//            org.jb2011.lnf.beautyeye.BeautyEyeLNFHelper.launchBeautyEyeLNF();
//        } catch(Exception e){
//            //TODO exception
//        }
//
//    }
//
//    public LoginFrame() {
//
//
//        JFrame frame = new JFrame();
//        this.setTitle("Login");// 设置窗体的标题
//        this.setSize(700, 550);// 设置窗体的大小，单位是像素
//        this.setDefaultCloseOperation(3);// 设置窗体的关闭操作；3表示关闭窗体退出程序；2、1、0
//        this.setLocationRelativeTo(null);// 设置窗体相对于另一个组件的居中位置，参数null表示窗体相对于屏幕的中央位置
//        this.setResizable(false);// 设置禁止调整窗体大小
//        // 实例化FlowLayout流式布局类的对象，指定对齐方式为居中对齐，组件之间的间隔为5个像素
//        FlowLayout fl = new FlowLayout(FlowLayout.LEFT, 10, 50);
//        // 实例化流式布局类的对象
//        this.setLayout(fl);
//        // 5.实例化元素组件对象，将元素组件对象添加到窗体上（组件添加要在窗体可见之前完成）。
//        // 实例化ImageIcon图标类的对象，该对象加载磁盘上的图片文件到内存中，这里的路径要用两个\
//        ImageIcon icon = new ImageIcon("images/登录图片.png");
//        // 用标签来接收图片，实例化JLabel标签对象，该对象显示icon图标
//        JLabel labIcon = new JLabel(icon);
//        //设置标签大小
//        Dimension dim = new Dimension(450,550);
//
//        labIcon.setPreferredSize(dim);
//
//        this.add(labIcon); // 将labIcon标签添加到窗体上
//
//        //处理北部
//        //处理中部
//        jp2 = new JPanel(new GridLayout(2,2,30,10));
//        jl1 = new JLabel("帐号:",JLabel.RIGHT);
//
//        jl2 = new JLabel("密码:",JLabel.RIGHT);
//        id = new JTextField(15);
//        id.addKeyListener(this);
//        pwd = new JPasswordField(15);
//        pwd.addKeyListener(this);
//        jp2.add(jl1,0);
//        jp2.add(id,1);
//        jp2.add(jl2,2);
//        jp2.add(pwd,3);
//
//        //处理南部
//        jp1 = new JPanel(new GridLayout(1,2,10,0));
//        jb = new JButton("登录");
//
//        //注册按钮:
//        jb2=new JButton("注册");
//        //响应用户点击登录
//        jb.addActionListener(this);
//        jb2.addActionListener(this);
//        jp1.add(jb);
//        jp1.add(jb2);
//        jp3 = new JPanel(new GridLayout(2,1,10,10));
//        jp3.add(jp2);
//        jp3.add(jp1);
//        this.add(jp3);
//        //响应用户点击注册
//        this.pack();
//        this.setVisible(true);// 设置窗体为可见
//    }
//
//    @Override
//    public void actionPerformed(ActionEvent e) {
//        //如果用户点击登陆了
//        if(e.getSource()==jb){
//            doLogin();
//        }
//        if(e.getSource()==jb2){
//            new RegisterFrame();
//        }
//    }
//
//    @Override
//    public void keyTyped(KeyEvent e) {
//
//    }
//
//    @Override
//    public void keyPressed(KeyEvent e) {
//        if(e.getKeyCode()==KeyEvent.VK_ENTER){
//            doLogin();
//        }
//    }
//
//    @Override
//    public void keyReleased(KeyEvent e) {
//
//    }
//    private void doLogin(){
//
//        User u = new User();
//        u.setId(id.getText().trim());
//        u.setPwd(new String(pwd.getPassword()));
//        if(new FirstConnector().sendLoginInfoToServer(u)){//checkUser已经启动线程
//            try{
//                //把创建好友列表的语句提前
//                FriendListFrame friendListFrame = new FriendListFrame(this,u.getId());
//                FriendListFrameManager.addQqFriendList(u.getId(), friendListFrame);
//
//                //发送要求返回在线好友的请求包
//                ObjectOutputStream oos = new ObjectOutputStream
//                        (ClientSocketThreadManager.getClientConServerThread(u.getId()).getS().getOutputStream());
//                //做一个包
//                Message message = new Message();
//                message.setMesType(MessageType.message_get_onLineFriend);
//                //指明谁来要好友
//                message.setSender(u.getId());
//                oos.writeObject(message);
//
//            }catch (Exception arg0){
//                arg0.printStackTrace();
//            }
//            //关闭登录页面
//            this.dispose();
//        }else{
//            JOptionPane.showMessageDialog(this,"用户名或密码错误,或者帐号已登录,或者服务器正在维护");
//        }
//    }
//}
